home *** CD-ROM | disk | FTP | other *** search
/ Invisible Universe / Invisible Universe (1995)(Voyager)[Mac-PC].iso / mac / MOVIES / POETRY.DIR / 00005_Script_5 < prev    next >
Text File  |  1995-11-15  |  6KB  |  204 lines

  1. on showHilite
  2.   global gCurrChan,gFirsChan,gLastChan,gPoetryButtons,gPrevHilite
  3.   goMovieGo
  4.   
  5.   set m = the movie
  6.   testOverheadMenu
  7.   if m <> the movie then exit
  8.   
  9.   
  10.   put getAprop(gPoetryButtons,gCurrChan) into thisOne
  11.   if rollOver(gCurrChan) then
  12.     put the puppet of sprite gCurrChan into pState
  13.     puppetSprite gCurrChan,false
  14.     put the castnum of sprite gCurrChan into it
  15.     set the puppet of sprite gCurrChan to pState
  16.     goMovieGo
  17.     if (it<>0) then
  18.       if gCurrChan <> gPrevHilite then
  19.         rollo(thisOne)
  20.         put gCurrChan into gPrevHilite
  21.       end if
  22.       goMovieGo
  23.       if the mouseDown then
  24.         press(thisOne)
  25.         put 0 into gPrevHilite
  26.         goMovieGo
  27.         
  28.         set pressState = 1
  29.         if gCurrChan <> 5 and gCurrChan <> 6 then
  30.           repeat while the mouseDown
  31.             goMovieGo
  32.             
  33.             if not pressState and rollover(gCurrChan) then
  34.               press(thisOne)
  35.               set pressState = 1
  36.             end if
  37.             goMovieGo
  38.             
  39.             if pressState and not rollover(gCurrChan) then
  40.               norm(thisOne)
  41.               set pressState = 0
  42.             end if
  43.           end repeat
  44.         end if
  45.         
  46.         if pressState then        
  47.           set m = the Movie
  48.           doScript(thisOne)
  49.           if m = the Movie then norm(thisOne)
  50.         end if
  51.         
  52.       end if
  53.     else
  54.       put gCurrChan+1 into gCurrChan
  55.       if gCurrChan > gLastChan then put gFirsChan into gCurrChan
  56.       goMovieGo
  57.     end if
  58.   else
  59.     if gCurrChan = gPrevHilite then norm(thisOne)
  60.     put 0 into gPrevHilite
  61.     put gCurrChan+1 into gCurrChan
  62.     if gCurrChan > gLastChan then put gFirsChan into gCurrChan
  63.     goMovieGo
  64.   end if
  65.   goMovieGo
  66. end showHilite
  67.  
  68. on nextPage
  69.   global gPoemIsPlaying,gLastPage
  70.   if gLastPage then exit
  71.   --  if not(gPoemIsPlaying ) then puppetTransition 02,1,24,true
  72.   go to (the frame)+1
  73.   setUpPage "next"
  74.   updateStage
  75. end nextPage
  76.  
  77. on prevPage
  78.   global gPoemIsPlaying, gPageIndex
  79.   if gPageIndex = 1 then exit
  80.   --  if not(gPoemIsPlaying ) then  puppetTransition 01,1,24,true
  81.   go to (the frame)-1
  82.   setUpPage "prev"
  83.   updateStage
  84. end prevPage
  85.  
  86. on nextPoem
  87.   global gPoemLabel, gPageIndex
  88.   -- puppetTransition 50,1,120,false
  89.   stopPoem
  90.   addToRetrace(gPoemLabel)
  91.   if gPoemLabel = "P96" then go frame "P11"
  92.   else go to marker(1)
  93.   put the frameLabel into gPoemLabel
  94.   put 0 into gPageIndex
  95.   setUpPage "next"
  96.   updateStage
  97. end nextPoem
  98.  
  99. on prevPoem
  100.   global gPoemLabel, gPageIndex
  101.   -- puppetTransition 50,1,120,false
  102.   stopPoem
  103.   addToRetrace(gPoemLabel)
  104.   if gPoemLabel = "P11" then go frame "P96"
  105.   else go to marker(-1)
  106.   put the frameLabel into gPoemLabel
  107.   put 0 into gPageIndex
  108.   setUpPage "next"
  109.   updateStage
  110. end prevPoem
  111.  
  112. on hearPoem
  113.   global gPoemLabel,gPoemIsPlaying, gVolume, gPageTurnTime,gPageIndex
  114.   
  115.   if the type of sprite 10 <> 16 then exit
  116.   
  117.   if (the movieRate of sprite 10) > 0 and (the movieTime of sprite 10) > 0 then
  118.     stopPoem
  119.   else
  120.     puppetSprite 10, true
  121.     repeat while true
  122.       preloadcast gPoemLabel
  123.       if the loaded of cast gPoemLabel then exit repeat
  124.     end repeat
  125.     set the movieRate of sprite 10 to .0001
  126.     set the volume of sprite 10 to gVolume
  127.     set the movieTime of sprite 10 to 0
  128.     put line gPageIndex of field(the castNum of sprite 9) into it
  129.     set the startTime of sprite 10 to integer(it)
  130.     set the stopTime of sprite 10 to (the duration of cast gPoemLabel)
  131.     set the movieRate of sprite 10 to 1
  132.     put true into gPoemIsPlaying
  133.     puppetSprite 10, false
  134.     updateStage
  135.   end if
  136. end hearPoem
  137.  
  138. on stopPoem
  139.   global gPoemLabel, gPoemIsPlaying
  140.   
  141.   if gPoemIsPlaying then
  142.     
  143.     put false into gPoemIsPlaying
  144.     
  145.     if the type of sprite 10 <> 16 then exit 
  146.     
  147.     if the movietime of sprite 10 < the stopTime of sprite 10 then
  148.       repeat with i = 1 to 8
  149.         set the volume of sprite 10 to (the volume of sprite 10)-32
  150.         delay 8
  151.       end repeat
  152.     end if
  153.     
  154.     set the movieRate of sprite 10 to 0
  155.     set the startTime of sprite 10 to 0
  156.     
  157.     --    repeat while true
  158.     unloadcast gPoemLabel
  159.     --      if not(the loaded of cast gPoemLabel) then exit repeat
  160.     --    end repeat
  161.   end if
  162. end stopPoem
  163.  
  164. on goMovieGo
  165.   global gPoemLabel, gPoemIsPlaying, gPageTurnTime, gLastPage
  166.   
  167.   if not(gPoemIsPlaying) then exit
  168.   
  169.   
  170.   if the type of sprite 10 <> 16 then exit
  171.   
  172.   put (the movieTime of sprite 10) into it
  173.   
  174.   --  if it < gPageTurnTime then set the movieRate of sprite 10 to 1
  175.   
  176.   if it >= gPageTurnTime  then
  177.     put ">>> > pageturn time lastpage = " & gLastPage
  178.     if gLastPage then stopPoem
  179.     else nextPage
  180.   end if
  181.   
  182.   updateStage
  183. end goMovieGo
  184.  
  185. on setUpPage whichWay
  186.   global gPoemIsPlaying, gPageTurnTime, gPageIndex, gPoemLabel, gLastPage
  187.   if whichWay = "prev" then put gPageIndex-1 into gPageIndex
  188.   else put gPageIndex+1 into gPageIndex
  189.   put the castNum of sprite 9 into theField
  190.   if theField<> 0 then
  191.     put the text of field theField into theTimes
  192.     put integer(line gPageIndex of theTimes) into pageTime
  193.     put integer(line gPageIndex+1 of theTimes) into gPageTurnTime
  194.     put (the castNum of sprite 2=0) into gLastPage
  195.     put (gPageTurnTime = the duration of cast gPoemLabel) into gLastPage
  196.     if ( whichWay = "prev" and (the movieTime of sprite 10) >= pageTime) or¼
  197.           (whichWay = "next" and (the movieTime of sprite 10) <= pageTime) then
  198.       set the movieTime of sprite 10 to pageTime
  199.     end if
  200.   else
  201.     put (the castNum of sprite 2=0) into gLastPage
  202.   end if
  203. end setUpPage
  204.